Note: This tutorial assumes that you have completed the previous tutorials: ROS Tutorials. |
Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags. |
Arduino IDE Setup
Description: This tutorial shows step-by-step how to setup up the Arduino IDE to use rosserial.Tutorial Level: BEGINNER
Next Tutorial: ja/rosserial_arduino/jaTutorials/Hello World
イントロダクション
Arduino と Arduino IDEははやく簡単にハードウェアのプログラムを書くのにすばらしいツールです。rosserial_arduinoを使えば、Arduino IDEでROSを直接使うことができます。rosserialは、ArduinoのUARTでも動くROSの通信プロトコルを提供します。それは、Arudinoを直接ROSのメッセージをパブリッシュしたりサブスクライブしたり、TFトランスフォームをパブリッシュしたりROSのシステム時間を取得したりすることのできる一人前のROSのnodeにします。
注意:もしまだArduino IDEのインストールをしていないなら、from the Arduino websiteからダウンロードしてください。アプリケーションのパスにあるフォルダーかデスクトップ、ホームフォルダにアプリケーションをインストールするのが勧められます。一旦インストールしたら、スケッチブックの位置を選ぶために、アプリケーションを立ち上げてください。(arduino official websiteをご覧ください。スケッチブックはあなたのプログラムやスケッチを保存する基本的なばしょになります。).終わったらIDEを閉じてください。
ROSのバインディングはArduinoのライブラリとして実行されます。すべてのArduinoのライブラリのように、ros_libはそのライブラリをスケッチブックのなかのライブラリフォルダに移動すると働きます。スケッチブックにまだライブラリのフォルダがない場合は、新たに作ってください。そしたらdebs(sudo apt-get install ros-electric-rosserial)からでもソースからでもライブラリをインストールできます。
rosserialのライブラリをコードの中で使うために、初めに以下を書かなくてはなりません。
#include <ros.h>
上はすべてのファイルに優先されて書きます。つまり
#include <std_msgs/String.h>
などです。さもないと、Arduino IDEはそれらをおくことができません。
ソースから加える
ソースからインストールしたいなら、いくらかの余分なステップを踏む必要になります。
hg clone https://kforge.ros.org/rosserial/hg rosserial rosdep install rosserial_arduino rosmake rosserial_arduino
これらのコマンドは、mercurialをつかってrosserialレポジトリをクローンし、依存ファイルやパッケージをインストール、通信に必要なrosserial_msgsを生成し、ros_libライブラリを含むライブラリフォルダを作っています。
終わりに
これで、ソースからかdebsからかインストールが終わったので、あと唯一やらなくてはならないことはrosserial_arduino/librariesのディレクトリをArduinoのスケッチブックにコピーすることです。
roscd rosserial_arduino/libraries cp -r ros_lib <sketchbook>/libraries/ros_lib
IDEを再起動した後に、ros_libが例の中にリストされているのが見れます。